fedfa278718d283977a8d57d89525ac055486b1c,carbon/src/main/java/carbon/shadow/ShadowGenerator.java,ShadowGenerator,blurSoftware,#Bitmap#number#,37
Before Change
}
private static void blurSoftware(Bitmap bitmap, float radius) {
int[] pixels = new int[bitmap.getWidth() * bitmap.getHeight()];
bitmap.getPixels(pixels, 0, bitmap.getWidth(), 0, 0, bitmap.getWidth(), bitmap.getHeight());
int[] halfResult = new int[bitmap.getWidth() * bitmap.getHeight()];
int rad = (int) Math.ceil(radius);
for (int y = 0; y < bitmap.getHeight(); y++) {
for (int x = 0; x < bitmap.getWidth(); x++) {
int sumBlack = 0, sumAlpha = 0;
for (int i = -rad; i <= rad; i++) {
int pixel = pixels[y * bitmap.getWidth() + Math.max(0, Math.min(x + i, bitmap.getWidth() - 1))];
sumBlack += pixel & 0xff;
sumAlpha += (pixel >> 24) & 0xff;
}
int blurredBlack = sumBlack / (rad * 2 + 1);
int blurredAlpha = sumAlpha / (rad * 2 + 1);
halfResult[y * bitmap.getWidth() + x] = Color.argb(blurredAlpha, blurredBlack, blurredBlack, blurredBlack);
}
}
for (int x = 0; x < bitmap.getWidth(); x++) {
for (int y = 0; y < bitmap.getHeight(); y++) {
int sumBlack = 0, sumAlpha = 0;
for (int i = -rad; i <= rad; i++) {
After Change
}
private static void blurSoftware(Bitmap bitmap, float radius) {
int width = bitmap.getWidth();
int height = bitmap.getHeight();
int[] pixels = new int[width * height];
bitmap.getPixels(pixels, 0, width, 0, 0, width, height);
int[] halfResult = new int[width * height];